package CSDN.hzh23_2_4;

import java.util.ArrayList;
import java.util.List;

/**
 * @Description:
 * @Author: Hanzao
 * @Date: 2023/02/04/22:23
 */
public class Demo1 {
    public static void main(String[] args) {
        List<List<Integer>> generate = new Solution().generate(5);
        for (int i = 0; i < generate.size(); i++) {
            for (int j = 0; j < generate.get(i).size(); j++) {
                System.out.print(" " + generate.get(i).get(j));
            }
            System.out.println("");
        }
    }
}

class Solution {
    public List<List<Integer>> generate(int numRows) {
        List<List<Integer>> res = new ArrayList<>();
        List<Integer> list1 = new ArrayList<>();
        list1.add(1);
        res.add(list1);
        if (numRows == 1) {
            return res;
        }
        List<Integer> list2 = new ArrayList<>();
        list2.add(1);
        list2.add(1);
        res.add(list2);
        if (numRows == 2) {
            return res;
        }
        List<Integer> preList = new ArrayList<>();
        preList.add(1);
        preList.add(1);
        for (int i = 2; i < numRows; i++) {
            List<Integer> list = new ArrayList<>();
            list.add(1);
            for (int j = 1; j < i; j++) {
                list.add(preList.get(j - 1) + preList.get(j));
            }
            list.add(1);
            preList = list;
            res.add(list);
        }
        return res;
    }
}
